/*
CREDITS:

Sprites:
Rip - AEoD Team
Original - Epic Games (Unreal)

Sounds:
Up, health racking up - Epic Games (UT99)
Rev up, fire, stop down on both fire modes - Valve (Left 4 Dead)
Additional firing clip - ? (I got those from FPSBanana before it ker-crashed and turned into Gamebanana, soooo... couldn't find them again.)
*/

ACTOR PowerOverwhelming : Weapon 24505
{
//$Category Weapons
//$Title Power Overwhelming
//$Sprite NGU3X0
Tag "Power Overwhelming"
Inventory.PickupSound "misc/w_pkup"
Inventory.PickupMessage "You got the ''Power Overwhelming'' minigun! We need focus... to ERADICATE! (4)"
Obituary "%k power overwhelmed %o with heavy lead."
weapon.UpSound "Weapons/PowerOverwhelmingUp"
Weapon.SelectionOrder 5
Weapon.AmmoType "Boolet"
Weapon.AmmoGive 100
Weapon.AmmoUse 1
Weapon.Kickback 50
Weapon.SlotNumber 4
+ALT_AMMO_OPTIONAL
Scale 0.9
States
{
Spawn:
	NGU3 X -1
	Stop
Ready:
	NGU3 A 1 A_WeaponReady
	TNT1 A 0 A_JumpIfInventory("RO_GotoReload", 1, "Reload")
	Loop
Deselect:
	NGU3 A 0 A_StopSoundEx("SoundSlot5")
	NGU3 A 0 A_StopSoundEx("SoundSlot6")
	NGU3 A 1 A_Lower
	NGU3 A 0 A_Lower
	Goto Deselect+1
Select:
	NGU3 A 1 A_Raise
	TNT1 A 0 A_Raise
	Loop
Fire:
	TNT1 A 0 A_PlaySound("Weapons/PowerOverwhelmingStart",5)
	NGU3 BCD 3
	NGU3 EF 2
	NGU3 GH 2
	NGU3 EFGH 1
	NGU3 EFGHEFGH 1
Hold:
	TNT1 A 0 A_JumpIfInventory("CaliberUpgrade",1,"CaliberHold")
	TNT1 A 0 A_PlaySound("",1,0.6,1)
	TNT1 A 0 A_PlaySound("Weapons/PowerOverwhelmingLoop",5,0.6,1)
	TNT1 A 0 A_PlaySound("Weapons/PowerOverwhelmingAddLoop",6,0.6,1)

	TNT1 A 0 A_GunFlash
	TNT1 A 0 A_Recoil(2.2)
	TNT1 A 0 A_Quake(4,3,0,32,none)
	TNT1 A 0 ACS_Execute(851,0,35,9+random(6,1),0)
	TNT1 A 0 A_GiveInventory("BooletCasing")
        TNT1 A 0 A_ZoomFactor(0.955)

	TNT1 A 0 A_FireCustomMissile("OverpowerShot",0.01*random(500,-500),0,9+random(3,-3),random(1,-1),0,0.01*random(-200,200))
	NGU3 I 1 Bright A_FireCustomMissile("OverpowerShot",0.01*random(500,-500),1,9+random(3,-3),random(1,-1),0,0.01*random(-200,200))

	TNT1 A 0 A_GiveInventory("BooletCasing")
	TNT1 A 0 A_FireCustomMissile("OverpowerShot",0.01*random(500,-500),1,9+random(3,-3),random(1,-1),0,0.01*random(-200,200))
	NGU3 J 1 Bright A_FireCustomMissile("OverpowerShot",0.01*random(500,-500),1,9+random(3,-3),random(1,-1),0,0.01*random(-200,200))

	TNT1 A 0 A_GiveInventory("BooletCasing")
	TNT1 A 0 A_FireCustomMissile("OverpowerShot",0.01*random(500,-500),0,9+random(3,-3),random(1,-1),0,0.01*random(-200,200))
	NGU3 K 1 Bright A_FireCustomMissile("OverpowerShot",0.01*random(500,-500),1,9+random(3,-3),random(1,-1),0,0.01*random(-200,200))

	TNT1 A 0 A_JumpIfNoAmmo("HoldEndA")

	TNT1 A 0 A_GunFlash
	TNT1 A 0 A_Recoil(2.2)
	TNT1 A 0 A_Quake(4,3,0,32,none)
	TNT1 A 0 ACS_Execute(851,0,35,9+random(6,1),0)
	TNT1 A 0 A_GiveInventory("BooletCasing")
	TNT1 A 0 A_FireCustomMissile("OverpowerShot",0.01*random(500,-500),0,9+random(3,-3),random(1,-1),0,0.01*random(-200,200))
	NGU3 L 1 Bright A_FireCustomMissile("OverpowerShot",0.01*random(500,-500),1,9+random(3,-3),random(1,-1),0,0.01*random(-200,200))

	TNT1 A 0 A_GiveInventory("BooletCasing")
	TNT1 A 0 A_FireCustomMissile("OverpowerShot",0.01*random(500,-500),1,9+random(3,-3),random(1,-1),0,0.01*random(-200,200))
	NGU3 M 1 Bright A_FireCustomMissile("OverpowerShot",0.01*random(500,-500),1,9+random(3,-3),random(1,-1),0,0.01*random(-200,200))

	TNT1 A 0 A_GiveInventory("BooletCasing")
	TNT1 A 0 A_FireCustomMissile("OverpowerShot",0.01*random(500,-500),0,9+random(3,-3),random(1,-1),0,0.01*random(-200,200))
	NGU3 N 1 Bright A_FireCustomMissile("OverpowerShot",0.01*random(500,-500),1,9+random(3,-3),random(1,-1),0,0.01*random(-200,200))

	TNT1 A 0 A_JumpIfNoAmmo("HoldEndB")

	TNT1 A 0 A_GunFlash
	TNT1 A 0 A_Recoil(2.2)
	TNT1 A 0 A_Quake(4,3,0,32,none)
	TNT1 A 0 ACS_Execute(851,0,35,9+random(6,1),0)

	TNT1 A 0 A_GiveInventory("BooletCasing")
	TNT1 A 0 A_FireCustomMissile("OverpowerShot",0.01*random(500,-500),0,9+random(3,-3),random(1,-1),0,0.01*random(-200,200))
	NGU3 O 1 Bright A_FireCustomMissile("OverpowerShot",0.01*random(500,-500),1,9+random(3,-3),random(1,-1),0,0.01*random(-200,200))

	TNT1 A 0 A_GiveInventory("BooletCasing")
	TNT1 A 0 A_FireCustomMissile("OverpowerShot",0.01*random(500,-500),1,9+random(3,-3),random(1,-1),0,0.01*random(-200,200))
	NGU3 P 1 Bright A_FireCustomMissile("OverpowerShot",0.01*random(500,-500),1,9+random(3,-3),random(1,-1),0,0.01*random(-200,200))

	TNT1 A 0 A_GiveInventory("BooletCasing")
	TNT1 A 0 A_FireCustomMissile("OverpowerShot",0.01*random(500,-500),0,9+random(3,-3),random(1,-1),0,0.01*random(-200,200))
	NGU3 Q 1 Bright A_FireCustomMissile("OverpowerShot",0.01*random(500,-500),1,9+random(3,-3),random(1,-1),0,0.01*random(-200,200))

	TNT1 A 0 A_JumpIfNoAmmo("HoldEndC")

	TNT1 A 0 A_GunFlash
	TNT1 A 0 A_Recoil(2.2)
	TNT1 A 0 A_Quake(4,3,0,32,none)
	TNT1 A 0 ACS_Execute(851,0,35,9+random(6,1),0)
	TNT1 A 0 A_GiveInventory("BooletCasing")
	TNT1 A 0 A_FireCustomMissile("OverpowerShot",0.01*random(500,-500),0,9+random(3,-3),random(1,-1),0,0.01*random(-200,200))
	NGU3 R 1 Bright A_FireCustomMissile("OverpowerShot",0.01*random(500,-500),1,9+random(3,-3),random(1,-1),0,0.01*random(-200,200))

	TNT1 A 0 A_GiveInventory("BooletCasing")
	TNT1 A 0 A_FireCustomMissile("OverpowerShot",0.01*random(500,-500),1,9+random(3,-3),random(1,-1),0,0.01*random(-200,200))
	NGU3 S 1 Bright A_FireCustomMissile("OverpowerShot",0.01*random(500,-500),1,9+random(3,-3),random(1,-1),0,0.01*random(-200,200))

	TNT1 A 0 A_GiveInventory("BooletCasing")
	TNT1 A 0 A_FireCustomMissile("OverpowerShot",0.01*random(500,-500),0,9+random(3,-3),random(1,-1),0,0.01*random(-200,200))
	NGU3 T 1 Bright A_FireCustomMissile("OverpowerShot",0.01*random(500,-500),1,9+random(3,-3),random(1,-1),0,0.01*random(-200,200))

	TNT1 A 0 A_JumpIfNoAmmo("HoldEndD")

	TNT1 A 0 A_GunFlash
	TNT1 A 0 A_Recoil(2.2)
	TNT1 A 0 A_Quake(4,3,0,32,none)
	TNT1 A 0 ACS_Execute(851,0,35,9+random(6,1),0)
	TNT1 A 0 A_GiveInventory("BooletCasing")
	TNT1 A 0 A_FireCustomMissile("OverpowerShot",0.01*random(500,-500),0,9+random(3,-3),random(1,-1),0,0.01*random(-200,200))
	NGU3 U 1 Bright A_FireCustomMissile("OverpowerShot",0.01*random(500,-500),1,9+random(3,-3),random(1,-1),0,0.01*random(-200,200))

	TNT1 A 0 A_GiveInventory("BooletCasing")
	TNT1 A 0 A_FireCustomMissile("OverpowerShot",0.01*random(500,-500),1,9+random(3,-3),random(1,-1),0,0.01*random(-200,200))
	NGU3 V 1 Bright A_FireCustomMissile("OverpowerShot",0.01*random(500,-500),1,9+random(3,-3),random(1,-1),0,0.01*random(-200,200))

	TNT1 A 0 A_GiveInventory("BooletCasing")
	TNT1 A 0 A_FireCustomMissile("OverpowerShot",0.01*random(500,-500),0,9+random(3,-3),random(1,-1),0,0.01*random(-200,200))
	NGU3 W 1 Bright A_FireCustomMissile("OverpowerShot",0.01*random(500,-500),1,9+random(3,-3),random(1,-1),0,0.01*random(-200,200))

	TNT1 A 0 A_JumpIfNoAmmo("HoldEndE")
	TNT1 A 0 A_ReFire
    TNT1 A 0 A_ZoomFactor(1)
	NGU3 A 0 A_StopSound(6)
	TNT1 A 0 A_PlaySound("Weapons/PowerOverwhelmingStop",5,0.6)
	NGU3 FGH 1
	Goto Stopper
CaliberHold:
	TNT1 A 0 A_PlaySound("Weapons/PowerOverwhelmingLoop",5,0.6,1)
	TNT1 A 0 A_PlaySound("Weapons/PowerOverwhelmingAddLoop",6,0.6,1)
	TNT1 A 0 A_PlaySound("Weapons/WolgirHFire",1,1.0,1)
	TNT1 A 0 A_GunFlash
	TNT1 A 0 A_Recoil(2.2)
	TNT1 A 0 A_Quake(4,3,0,32,none)
	TNT1 A 0 ACS_Execute(851,0,35,9+random(6,1),0)
	TNT1 A 0 A_GiveInventory("BooletCasing")
        TNT1 A 0 A_ZoomFactor(0.955)

	TNT1 A 0 A_FireCustomMissile("CaliberOverpowerShot",0.01*random(500,-500),0,9+random(3,-3),random(1,-1),0,0.01*random(-200,200))
	NGU3 I 1 Bright A_FireCustomMissile("CaliberOverpowerShot",0.01*random(500,-500),1,9+random(3,-3),random(1,-1),0,0.01*random(-200,200))

	TNT1 A 0 A_GiveInventory("BooletCasing")
	TNT1 A 0 A_FireCustomMissile("CaliberOverpowerShot",0.01*random(500,-500),1,9+random(3,-3),random(1,-1),0,0.01*random(-200,200))
	NGU3 J 1 Bright A_FireCustomMissile("CaliberOverpowerShot",0.01*random(500,-500),1,9+random(3,-3),random(1,-1),0,0.01*random(-200,200))

	TNT1 A 0 A_GiveInventory("BooletCasing")
	TNT1 A 0 A_FireCustomMissile("CaliberOverpowerShot",0.01*random(500,-500),0,9+random(3,-3),random(1,-1),0,0.01*random(-200,200))
	NGU3 K 1 Bright A_FireCustomMissile("CaliberOverpowerShot",0.01*random(500,-500),1,9+random(3,-3),random(1,-1),0,0.01*random(-200,200))

	TNT1 A 0 A_JumpIfNoAmmo("HoldEndA")

	TNT1 A 0 A_GunFlash
	TNT1 A 0 A_Recoil(2.2)
	TNT1 A 0 A_Quake(4,3,0,32,none)
	TNT1 A 0 ACS_Execute(851,0,35,9+random(6,1),0)
	TNT1 A 0 A_GiveInventory("BooletCasing")
	TNT1 A 0 A_FireCustomMissile("CaliberOverpowerShot",0.01*random(500,-500),0,9+random(3,-3),random(1,-1),0,0.01*random(-200,200))
	NGU3 L 1 Bright A_FireCustomMissile("CaliberOverpowerShot",0.01*random(500,-500),1,9+random(3,-3),random(1,-1),0,0.01*random(-200,200))

	TNT1 A 0 A_GiveInventory("BooletCasing")
	TNT1 A 0 A_FireCustomMissile("CaliberOverpowerShot",0.01*random(500,-500),1,9+random(3,-3),random(1,-1),0,0.01*random(-200,200))
	NGU3 M 1 Bright A_FireCustomMissile("CaliberOverpowerShot",0.01*random(500,-500),1,9+random(3,-3),random(1,-1),0,0.01*random(-200,200))

	TNT1 A 0 A_GiveInventory("BooletCasing")
	TNT1 A 0 A_FireCustomMissile("CaliberOverpowerShot",0.01*random(500,-500),0,9+random(3,-3),random(1,-1),0,0.01*random(-200,200))
	NGU3 N 1 Bright A_FireCustomMissile("CaliberOverpowerShot",0.01*random(500,-500),1,9+random(3,-3),random(1,-1),0,0.01*random(-200,200))

	TNT1 A 0 A_JumpIfNoAmmo("HoldEndB")

	TNT1 A 0 A_GunFlash
	TNT1 A 0 A_Recoil(2.2)
	TNT1 A 0 A_Quake(4,3,0,32,none)
	TNT1 A 0 ACS_Execute(851,0,35,9+random(6,1),0)

	TNT1 A 0 A_GiveInventory("BooletCasing")
	TNT1 A 0 A_FireCustomMissile("CaliberOverpowerShot",0.01*random(500,-500),0,9+random(3,-3),random(1,-1),0,0.01*random(-200,200))
	NGU3 O 1 Bright A_FireCustomMissile("CaliberOverpowerShot",0.01*random(500,-500),1,9+random(3,-3),random(1,-1),0,0.01*random(-200,200))

	TNT1 A 0 A_GiveInventory("BooletCasing")
	TNT1 A 0 A_FireCustomMissile("CaliberOverpowerShot",0.01*random(500,-500),1,9+random(3,-3),random(1,-1),0,0.01*random(-200,200))
	NGU3 P 1 Bright A_FireCustomMissile("CaliberOverpowerShot",0.01*random(500,-500),1,9+random(3,-3),random(1,-1),0,0.01*random(-200,200))

	TNT1 A 0 A_GiveInventory("BooletCasing")
	TNT1 A 0 A_FireCustomMissile("CaliberOverpowerShot",0.01*random(500,-500),0,9+random(3,-3),random(1,-1),0,0.01*random(-200,200))
	NGU3 Q 1 Bright A_FireCustomMissile("CaliberOverpowerShot",0.01*random(500,-500),1,9+random(3,-3),random(1,-1),0,0.01*random(-200,200))

	TNT1 A 0 A_JumpIfNoAmmo("HoldEndC")

	TNT1 A 0 A_GunFlash
	TNT1 A 0 A_Recoil(2.2)
	TNT1 A 0 A_Quake(4,3,0,32,none)
	TNT1 A 0 ACS_Execute(851,0,35,9+random(6,1),0)
	TNT1 A 0 A_GiveInventory("BooletCasing")
	TNT1 A 0 A_FireCustomMissile("CaliberOverpowerShot",0.01*random(500,-500),0,9+random(3,-3),random(1,-1),0,0.01*random(-200,200))
	NGU3 R 1 Bright A_FireCustomMissile("CaliberOverpowerShot",0.01*random(500,-500),1,9+random(3,-3),random(1,-1),0,0.01*random(-200,200))

	TNT1 A 0 A_GiveInventory("BooletCasing")
	TNT1 A 0 A_FireCustomMissile("CaliberOverpowerShot",0.01*random(500,-500),1,9+random(3,-3),random(1,-1),0,0.01*random(-200,200))
	NGU3 S 1 Bright A_FireCustomMissile("CaliberOverpowerShot",0.01*random(500,-500),1,9+random(3,-3),random(1,-1),0,0.01*random(-200,200))

	TNT1 A 0 A_GiveInventory("BooletCasing")
	TNT1 A 0 A_FireCustomMissile("CaliberOverpowerShot",0.01*random(500,-500),0,9+random(3,-3),random(1,-1),0,0.01*random(-200,200))
	NGU3 T 1 Bright A_FireCustomMissile("CaliberOverpowerShot",0.01*random(500,-500),1,9+random(3,-3),random(1,-1),0,0.01*random(-200,200))

	TNT1 A 0 A_JumpIfNoAmmo("HoldEndD")

	TNT1 A 0 A_GunFlash
	TNT1 A 0 A_Recoil(2.2)
	TNT1 A 0 A_Quake(4,3,0,32,none)
	TNT1 A 0 ACS_Execute(851,0,35,9+random(6,1),0)
	TNT1 A 0 A_GiveInventory("BooletCasing")
	TNT1 A 0 A_FireCustomMissile("CaliberOverpowerShot",0.01*random(500,-500),0,9+random(3,-3),random(1,-1),0,0.01*random(-200,200))
	NGU3 U 1 Bright A_FireCustomMissile("CaliberOverpowerShot",0.01*random(500,-500),1,9+random(3,-3),random(1,-1),0,0.01*random(-200,200))

	TNT1 A 0 A_GiveInventory("BooletCasing")
	TNT1 A 0 A_FireCustomMissile("CaliberOverpowerShot",0.01*random(500,-500),1,9+random(3,-3),random(1,-1),0,0.01*random(-200,200))
	NGU3 V 1 Bright A_FireCustomMissile("CaliberOverpowerShot",0.01*random(500,-500),1,9+random(3,-3),random(1,-1),0,0.01*random(-200,200))

	TNT1 A 0 A_GiveInventory("BooletCasing")
	TNT1 A 0 A_FireCustomMissile("CaliberOverpowerShot",0.01*random(500,-500),0,9+random(3,-3),random(1,-1),0,0.01*random(-200,200))
	NGU3 W 1 Bright A_FireCustomMissile("CaliberOverpowerShot",0.01*random(500,-500),1,9+random(3,-3),random(1,-1),0,0.01*random(-200,200))

	TNT1 A 0 A_JumpIfNoAmmo("HoldEndE")
	TNT1 A 0 A_ReFire
    TNT1 A 0 A_ZoomFactor(1)
	NGU3 A 0 A_StopSound(6)
	NGU3 A 0 A_StopSound(1)
	TNT1 A 0 A_PlaySound("Weapons/PowerOverwhelmingStop",5,0.6)
	NGU3 FGH 1
	Goto Stopper
HoldEndA:
        TNT1 A 0 A_ZoomFactor(1)
	NGU3 A 0 A_StopSound(6)
	NGU3 A 0 A_StopSound(1)
	TNT1 A 0 A_PlaySound("Weapons/PowerOverwhelmingStop",5,0.6)
	NGU3 CD 1
	Goto Stopper
HoldEndB:
    TNT1 A 0 A_ZoomFactor(1)
	NGU3 A 0 A_StopSound(6)
	NGU3 A 0 A_StopSound(1)
	TNT1 A 0 A_PlaySound("Weapons/PowerOverwhelmingStop",5,0.6)
	NGU3 GH 1
	Goto Stopper
HoldEndC:
    TNT1 A 0 A_ZoomFactor(1)
	NGU3 A 0 A_StopSound(6)
	NGU3 A 0 A_StopSound(1)
	TNT1 A 0 A_PlaySound("Weapons/PowerOverwhelmingStop",5,0.6)
	Goto Stopper
HoldEndD:
    TNT1 A 0 A_ZoomFactor(1)
	NGU3 A 0 A_StopSound(6)
	NGU3 A 0 A_StopSound(1)
	TNT1 A 0 A_PlaySound("Weapons/PowerOverwhelmingStop",5,0.6)
	NGU3 HD 1
	Goto Stopper
HoldEndE:
    TNT1 A 0 A_ZoomFactor(1)
	NGU3 A 0 A_StopSound(6)
	NGU3 A 0 A_StopSound(1)
	TNT1 A 0 A_PlaySound("Weapons/PowerOverwhelmingStop",5,0.6)
	NGU3 FGCDEGH 1
	Goto Stopper
Stopper:
	NGU3 EFGC 1
	NGU3 DEGH 1

	NGU3 EFGC 1
	NGU3 DEGH 2
	NGU3 EFGA 2
	Goto Ready
AltFire:
	TNT1 A 0 A_JumpIfInventory("BooletCasing",8,1)
	Goto Ready
	TNT1 A 0 A_PlaySound("Weapons/PowerOverwhelmingAltUp",5,0.6)
	NGU3 BCD 3
	NGU3 EF 2
	NGU3 GH 2
	NGU3 EFGH 1
	NGU3 EFGHEFGH 1
AltHold:
	TNT1 A 0 A_PlaySound("Weapons/PowerOverwhelmingAltLoop",5,0.6,1)
	TNT1 A 0 A_JumpIfInventory("BooletCasing",8,1)
	Goto AltHoldEnd

    TNT1 A 0 A_GiveInventory("OverwhelmBoost")
	TNT1 A 0 A_Quake(4,4,0,16,none)

	TNT1 A 0 A_GunFlash
	TNT1 A 0 A_SetBlend("Green",0.2,15)
	TNT1 A 0 A_GiveInventory("MinorHp",2)
	TNT1 A 0 A_TakeInventory("BooletCasing",2)
	TNT1 A 0 A_SpawnItemEx("PoweroverGLDEF",0,0,0,0,0,0,0,128,0)
	TNT1 AA 0 A_SpawnItemEx("MinorHpFX", random(15,-15), random(15,-15), 30+random(15,-15), 0, 0, 0.1*random(3,7), 0, 128, 0)
	NGU3 E 1 Bright

	TNT1 A 0 A_GunFlash
	TNT1 A 0 A_SetBlend("Green",0.2,15)
	TNT1 A 0 A_GiveInventory("MinorHp",2)
	TNT1 A 0 A_TakeInventory("BooletCasing",2)
	TNT1 A 0 A_SpawnItemEx("PoweroverGLDEF",0,0,0,0,0,0,0,128,0)
	TNT1 AA 0 A_SpawnItemEx("MinorHpFX", random(15,-15), random(15,-15), 30+random(15,-15), 0, 0, 0.1*random(3,7), 0, 128, 0)
	NGU3 F 1 Bright

	TNT1 A 0 A_GunFlash
	TNT1 A 0 A_SetBlend("Green",0.2,15)
	TNT1 A 0 A_GiveInventory("MinorHp",2)
	TNT1 A 0 A_TakeInventory("BooletCasing",2)
	TNT1 A 0 A_SpawnItemEx("PoweroverGLDEF",0,0,0,0,0,0,0,128,0)
	TNT1 AA 0 A_SpawnItemEx("MinorHpFX", random(15,-15), random(15,-15), 30+random(15,-15), 0, 0, 0.1*random(3,7), 0, 128, 0)
	NGU3 G 1 Bright

	TNT1 A 0 A_GunFlash
	TNT1 A 0 A_SetBlend("Green",0.2,15)
	TNT1 A 0 A_GiveInventory("MinorHp",2)
	TNT1 A 0 A_TakeInventory("BooletCasing",2)
	TNT1 A 0 A_SpawnItemEx("PoweroverGLDEF",0,0,0,0,0,0,0,128,0)
	TNT1 AA 0 A_SpawnItemEx("MinorHpFX", random(15,-15), random(15,-15), 30+random(15,-15), 0, 0, 0.1*random(3,7), 0, 128, 0)
	NGU3 H 1 Bright

	TNT1 A 0 A_ReFire
    TNT1 A 0 A_ZoomFactor(1)
	TNT1 A 0 A_PlaySound("Weapons/PowerOverwhelmingAltStop",5,0.6)
	NGU3 A 0 A_StopSound(6)
	NGU3 EFGH 1
	Goto AltStopper
AltHoldEnd:
    TNT1 A 0 A_ZoomFactor(1)
	NGU3 A 0 A_StopSound(6)
	TNT1 A 0 A_PlaySound("Weapons/PowerOverwhelmingAltStop",5,0.6)
	NGU3 FGCDEGH 1
	Goto AltStopper
AltStopper:
	NGU3 EFGC 1
	NGU3 DEGH 1

	NGU3 EFGC 1
	NGU3 DEGH 2
	NGU3 EFGA 2
	NGU3 A 0 A_ClearReFire
	Goto Ready
Reload:
	TNT1 A 0 A_PlaySound("Overwhelming/Mode",6,0.8)
	TNT1 A 0 A_Quake(1,7,0,2,none)
	NGU3 A 0 A_JumpIfInventory("OverMode",1,"UnReload")
	NGU3 A 0 A_GiveInventory("OverMode",1)
	NGU3 A 0 A_Print("Homing boolets mode on.")
	NGU3 A 15
	NGU3 A 10 A_Weaponready(WRF_NOSWITCH|WRF_NOBOB)
	Goto Ready
UnReload:
	NGU3 A 0 A_TakeInventory("OverMode",1)
	NGU3 A 0 A_Print("Homing boolets mode off.")
	NGU3 A 15
	NGU3 A 10 A_Weaponready(WRF_NOSWITCH|WRF_NOBOB)
	Goto ready
Flash:
	TNT1 A 3 A_Light2
	TNT1 A 1 A_Light0
	Stop
}
}

actor OverMode : Inventory { Inventory.MaxAmount 1 }

actor OverpowerShot : FastProjectile
{
  Radius 11
  Height 8
  Speed 250
  Damage 6
  Projectile
  +RIPPER
  +THRUGHOST
  +EXPLODEONWATER
  +SEEKERMISSILE
  +DONTSEEKINVISIBLE
  +SCREENSEEKER
  Renderstyle Add
  DeathSound "weapons/larpaexp"
  Obituary "%o was power overwhelmed by %k."
  MissileType "OverpowerTrailer"
  Scale 0.1
  States
  {
  Spawn:
    TNT1 A 0
    TNT1 A 0 A_ChangeVelocity (frandom(-5.5, 5.5), frandom(-5.5, 5.5), frandom(-2.75, 2.75), 0)
	TNT1 A 0 A_JumpIfInTargetInventory("OverMode",1,"HomerMode")
	10BA A 1 Bright
    loop
  HomerMode:
    10BA A 1 Bright A_SeekerMissile(9,14,SMF_LOOK|SMF_PRECISE,192,5)
    Goto Spawn
  Death:
    TNT1 A 0 A_JumpIfInTargetInventory("NukerUpgrade",1,"NukerDeath")
    TNT1 A 0 A_Explode(20,64,0)
    TNT1 A 0 A_SpawnItemEx("PelletExplode",0,0,0,0,0,0,0,128,0)
    TNT1 BCD 4
    stop
  NukerDeath:
    TNT1 A 0 A_Explode(40,96,0)
    TNT1 A 0 A_SpawnItemEx("NukerPelletExplode",0,0,0,0,0,0,0,128,0)
    TNT1 BCD 4
    stop
  }
}

actor CaliberOverpowerShot : OverpowerShot
{
	Damage 10
}

ACTOR OverpowerTrailer
{
	+NOINTERACTION
	+CLIENTSIDEONLY
	+NOGRAVITY
	States
	{
	Spawn:
	TNT1 A 0
	TNT1 A 2 A_SpawnItemEx("OverpowerTrail",-0.1*random(15,5),0.1*random(15,5),7,0.01*random(15,10),0.01*random(15,10),0.01*random(15,10),Random(0,360),128,0)
	Stop
	}
}

ACTOR OverpowerTrail
{
	Scale 0.09
	Alpha 0.25
	+NOINTERACTION
	+CLIENTSIDEONLY
	+NOGRAVITY
	Renderstyle Add
	States
	{
	Spawn:
	SMKE A 0
	SMKE A 0 A_Jump(255,2,4,6)
	SMKE AAAAAAAAAAAAAAAAAAAA 1 A_FadeOut(0.03)
	Stop
	}
}

//Alt-Fire
ACTOR OverwhelmBoost : PowerupGiver
{
	Inventory.Amount 1
	+INVENTORY.AUTOACTIVATE
	+INVENTORY.ALWAYSPICKUP
	powerup.duration 4
	Powerup.Type Speed
	States
	{
	Spawn:
	TNT1 A -1
	Stop
	}
}

Actor PoweroverGLDEF
{
	+NOINTERACTION
	+NOGRAVITY
	States
	{
	Spawn:
	TNT1 A 2
	Stop
	}
}
